// Type: System.Web.UI.WebControls.LinkButton
// Assembly: System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
// Assembly location: C:\Windows\Microsoft.NET\Framework\v4.0.30319\System.Web.dll

using System;
using System.ComponentModel;
using System.Drawing.Design;
using System.Web.UI;

namespace System.Web.UI.WebControls
{
    [DefaultEvent("Click")]
    [ParseChildren(false)]
    [SupportsEventValidation]
    [DataBindingHandler(
        "System.Web.UI.Design.TextDataBindingHandler, System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
        )]
    [Designer(
        "System.Web.UI.Design.WebControls.LinkButtonDesigner, System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
        )]
    [ControlBuilder(typeof (LinkButtonControlBuilder))]
    [DefaultProperty("Text")]
    [ToolboxData("<{0}:LinkButton runat=\"server\">LinkButton</{0}:LinkButton>")]
    public class LinkButton : WebControl, IButtonControl, IPostBackEventHandler
    {
        public LinkButton();

        [DefaultValue("")]
        [Themeable(false)]
        public virtual string OnClientClick { get; set; }

        public override bool SupportsDisabledAttribute { get; }

        #region IButtonControl Members

        [Themeable(false)]
        [DefaultValue("")]
        public string CommandName { get; set; }

        [Themeable(false)]
        [DefaultValue("")]
        [Bindable(true)]
        public string CommandArgument { get; set; }

        [Themeable(false)]
        [DefaultValue(true)]
        public virtual bool CausesValidation { get; set; }

        [DefaultValue("")]
        [Bindable(true)]
        [PersistenceMode(PersistenceMode.InnerDefaultProperty)]
        [Localizable(true)]
        public virtual string Text { get; set; }

        [Editor(
            "System.Web.UI.Design.UrlEditor, System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
            , typeof (UITypeEditor))]
        [UrlProperty("*.aspx")]
        [DefaultValue("")]
        [Themeable(false)]
        public virtual string PostBackUrl { get; set; }

        [Themeable(false)]
        [DefaultValue("")]
        public virtual string ValidationGroup { get; set; }

        public event EventHandler Click;
        public event CommandEventHandler Command;

        #endregion

        #region IPostBackEventHandler Members

        void IPostBackEventHandler.RaisePostBackEvent(string eventArgument);

        #endregion

        protected override void AddAttributesToRender(HtmlTextWriter writer);
        protected override void AddParsedSubObject(object obj);
        protected virtual PostBackOptions GetPostBackOptions();
        protected override void LoadViewState(object savedState);
        protected virtual void OnClick(EventArgs e);
        protected virtual void OnCommand(CommandEventArgs e);
        protected virtual void RaisePostBackEvent(string eventArgument);
        protected internal override void OnPreRender(EventArgs e);
        protected internal override void RenderContents(HtmlTextWriter writer);
    }
}
